Intelligent device integration using rfid technology

ABSTRACT

A method of integrating devices using radio frequency identification (RFID) technology can include tracking movement of an RFID tag, wherein the RFID tag is associated with a user, and determining proximity of the RFID tag to a communication device. The method also can include initiating a programmatic action with the communication device according to the proximity of the RFID tag to the communication device, wherein the programmatic action is associated with the user.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a divisional application of U.S. application Ser.No. 11/539,870 entitled INTELLIGENT DEVICE INTEGRATION USING RFIDTECHNOLOGY and filed on Oct. 9, 2006, which is fully incorporated hereinby reference.

BACKGROUND OF THE INVENTION

The different ways in which people communicate continue to expand at arapid pace. Communication systems such as electronic mail, instantmessaging, video conferencing, and Web conferencing, for example, havebecome widespread despite being relatively new technologies. The abilityto communicate through these different mediums also has allowed users tobecome mobile. Users are no longer tethered to a desktop workstation orone particular communication device. Instead, users typically utilizeseveral communication devices, i.e., desktop computers, portablecomputers, personal digital assistants, pagers, mobile phones, etc.

When attempting to reach a user, however, it is not always evident whichcommunication system will be effective in delivering a message. If therecipient is at his or her desk, then a telephone call to the user'swork line will likely be effective. If the user is traveling, an instantmessage or a telephone call to the user's mobile phone may be moreappropriate. Still, an electronic mail can be effective if the intendedrecipient has electronic mail access.

Presently, there is no reliable way to determine which means ofcommunication is likely to be more effective in reaching an intendedrecipient. Further, in cases where the intended recipient is not in theoffice, it is often the case that the recipient either forgets toforward messages, i.e., from a landline to a mobile phone, or opts notto forward messages to avoid what may be perceived as a tedious process.

SUMMARY

One embodiment of the present invention can include a method ofintegrating devices using radio frequency identification (RFID)technology. The method can include tracking movement of an RFID tag,wherein the RFID tag is associated with a user, and determiningproximity of the RFID tag to a communication device. The method also caninclude initiating a programmatic action with the communication deviceaccording to the proximity of the RFID tag to the communication device,wherein the programmatic action is associated with the user.

Yet another embodiment of the present invention can include a computerreadable storage being programmed to cause a machine to perform thevarious steps and/or functions described herein.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 is a block diagram illustrating a system in accordance with oneaspect of the present invention.

FIG. 2 is a table illustrating telephone call handling in accordancewith another aspect of the present invention.

FIG. 3 is a table illustrating text message handling in accordance withanother aspect of the present invention.

FIG. 4 is an example of a 3-dimensional decision matrix configured inaccordance with one embodiment of the present invention.

FIG. 5 is a flow chart illustrating a method of routing messages inaccordance with yet another aspect of the present invention.

DETAILED DESCRIPTION

As will be appreciated by one skilled in the art, the present inventionmay be embodied as a method, system, or computer program product.Accordingly, the present invention may take the form of an entirelyhardware embodiment, an entirely software embodiment (includingfirmware, resident software, micro-code, etc.) or an embodimentcombining software and hardware aspects that may all generally bereferred to herein as a “circuit”, “module”, or “system”. Furthermore,the present invention may take the form of a computer program product ona computer-usable storage medium having computer-usable program codeembodied in the medium.

Any suitable computer usable or computer readable medium may beutilized. The computer-usable or computer-readable medium may be, forexample but not limited to, an electronic, magnetic, optical,electromagnetic, infrared, or semiconductor system, apparatus, device,or propagation medium. More specific examples (a non-exhaustive list) ofthe computer-readable medium would include the following: an electricalconnection having one or more wires, a portable computer diskette, ahard disk, a random access memory (RAM), a read-only memory (ROM), anerasable programmable read-only memory (EPROM or Flash memory), anoptical fiber, a portable compact disc read-only memory (CD-ROM), anoptical storage device, a transmission media such as those supportingthe Internet or an intranet, or a magnetic storage device. Note that thecomputer-usable or computer-readable medium could even be paper oranother suitable medium upon which the program is printed, as theprogram can be electronically captured, via, for instance, opticalscanning of the paper or other medium, then compiled, interpreted, orotherwise processed in a suitable manner, if necessary, and then storedin a computer memory. In the context of this document, a computer-usableor computer-readable medium may be any medium that can contain, store,communicate, propagate, or transport the program for use by or inconnection with the instruction execution system, apparatus, or device.The computer-usable medium may include a propagated data signal with thecomputer-usable program code embodied therewith, either in baseband oras part of a carrier wave. The computer usable program code may betransmitted using any appropriate medium, including but not limited tothe Internet, wireline, optical fiber cable, RF, etc.

Computer program code for carrying out operations of the presentinvention may be written in an object oriented programming language suchas Java, Smalltalk, C++ or the like. However, the computer program codefor carrying out operations of the present invention may also be writtenin conventional procedural programming languages, such as the “C”programming language or similar programming languages. The program codemay execute entirely on the user's computer, partly on the user'scomputer, as a stand-alone software package, partly on the user'scomputer and partly on a remote computer, or entirely on the remotecomputer or server. In the latter scenario, the remote computer may beconnected to the user's computer through a local area network (LAN) or awide area network (WAN), or the connection may be made to an externalcomputer (for example, through the Internet using an Internet ServiceProvider).

The present invention is described below with reference to flowchartillustrations and/or block diagrams of methods, apparatus (systems) andcomputer program products according to embodiments of the invention. Itwill be understood that each block of the flowchart illustrations and/orblock diagrams, and combinations of blocks in the flowchartillustrations and/or block diagrams, can be implemented by computerprogram instructions. These computer program instructions may beprovided to a processor of a general purpose computer, special purposecomputer, or other programmable data processing apparatus to produce amachine, such that the instructions, which execute via the processor ofthe computer or other programmable data processing apparatus, createmeans for implementing the functions/acts specified in the flowchartand/or block diagram block or blocks.

These computer program instructions may also be stored in acomputer-readable memory that can direct a computer or otherprogrammable data processing apparatus to function in a particularmanner, such that the instructions stored in the computer-readablememory produce an article of manufacture including instruction meanswhich implement the function/act specified in the flowchart and/or blockdiagram block or blocks.

The computer program instructions may also be loaded onto a computer orother programmable data processing apparatus to cause a series ofoperational steps to be performed on the computer or other programmableapparatus to produce a computer implemented process such that theinstructions which execute on the computer or other programmableapparatus provide steps for implementing the functions/acts specified inthe flowchart and/or block diagram block or blocks.

Embodiments of the present invention are directed to the use of radiofrequency identification (RFID) technology with intelligent devices.RFID tags can be associated with users such that the movements,location, and/or proximity of users to various communication devices canbe tracked via the RFID tags. As users move closer or farther fromparticular communication devices, different functions can beimplemented. These functions can be implemented within the devicesthemselves or can be implemented within other, “outside” systems, i.e.,to automate message routing and the like. As used herein, acommunication device can include, but is not limited to, a computersystem whether desktop or portable, a mobile phone, a personal digitalassistant, a printer, or any other device capable of communicating overa network.

FIG. 1 is a block diagram illustrating a system 100 in accordance withone aspect of the present invention. The system 100 can include acentral controller 105 that is configured to determine locations forusers and use such information to work cooperatively with variouscommunication systems and/or communication devices. As shown,communication systems can include, but are not limited to, a telephonysystem 120, an electronic mail system 125, and an instant messagingsystem 130. Further examples of communication systems which can be usedwith the embodiments disclosed herein, without limitation, are a videoconferencing system, a virtual meeting and/or desktop conferencingsystem, a message translation and/or formatting system, etc.

The central controller 105 can be implemented as one or more computersystems capable of executing application programming, such as thecontroller application 110. The controller application 110 can includethe logic necessary to cause the central controller 105 to perform thevarious steps and/or functions disclosed herein. The central controller105 further can include a data storage device 115, or have access tosuch a device via a network, i.e., such as communication network 135.The central controller 105 further can include one or more adapterprograms (not shown) which facilitate communication between thecontroller application 110 and the communication systems 120-130.

The central controller 105 can communicate with the communicationsystems 120-130, as well as with the other devices to be describedherein via communication network 135. The communication network 135 canbe implemented as, or include, without limitation, a WAN, a LAN, thePublic Switched Telephone Network (PSTN), the Web, the Internet, and oneor more intranets. The communication network 135 further can include oneor more wireless networks, whether short or long range. For example, interms of short range wireless networks, the communication network 135can include a local wireless network built using a Bluetooth or an802-type wireless communication protocol. In terms of long rangewireless networks, the communication network 135 can include a mobile,cellular, and or satellite-based wireless network and support voice,video, text, and/or any combination thereof.

Under the control of the controller application 110 and through thecommunication network 135, the central controller 105 can communicatewith the antennae 140. Each of the antenna 140 can be a radio frequency(RF) antennae capable of communicating with, or detecting RFID tags,such as RFID tag 145. As shown, the RFID tag 145 can be carried on theperson of a user 150. The identifying information encoded into the RFIDtag 145 can be logically associated with the user 150, or a user profileof the user, within the central controller 105, i.e., within the datastorage device 115.

While each of the antennae 140 can be attached to its own informationprocessing node and/or station, in another embodiment, each can bedirectly connected to the central controller 105 via the communicationnetwork 135. The link between the antennae 140 and the centralcontroller 105 can be a wired connection or a wireless connection asdiscussed with reference to the communication network 135. In any case,the central controller 105 can determine a location of the RFID tag 145using the antennae 140. For example, techniques including, but notlimited to, triangulation, phase shift, round trip signal time, and thelike can be used to determine a location of RFID tag 125, and therefore,the user 150.

It further should be appreciated that any communication device, such ascomputer system 155, having an RFID reader 160 attached thereto, whichis capable of detecting an RFID tag also can provide locationinformation pertaining to the RFID tag 145 back to the centralcontroller 105. That is, when the RFID reader 160 detects the RFID tag145, the RFID reader 160 can communicate such information to thecomputer system 160, which, in turn, can notify the central controller105. Thus, the central controller 105 is aware that, at a minimum, theRFID tag 145 is within detectable range of the location of computersystem 155. Using the information available from the antennae 140 andsuitably equipped devices such as computer system 155, the centralcontroller 105 can continually track and/or monitor the location of oneor more RFID tags such as RFID tag 125. Further, it should beappreciated that while only one user is depicted in FIG. 1, that manymore users, and communication devices for that matter, can beincorporated into system 160 and, as such, the embodiments discussedherein are not intended to be limited by the number of users and/ordevices involved.

The RFID reader 160 can read and/or detect RFID tags such as RFID tag145. It should be appreciated that the manner in which the RFID reader160 is linked with computer system 155 is not intended to limit thepresent invention. For example, the RFID reader 160 can be linked withthe computer system 155 as a standard peripheral device, can beintegrated directly into, or within, the computer system 155, or can beconnected via wireless communication, such as through a Bluetoothconnection or other short-range wireless communication link.

In one embodiment, the RFID tag 145 can be an active tag with aninternal power source. In that case, the RFID tag 145 can emit an RFsignal that can be detected by the RFID reader 160 when the RFID tag 145is in range of the RFID reader 160. The RFID reader 160 can processreceived RF signals from the RFID tag 145 to accurately determine uniqueidentifying information imprinted or programmed into the RFID tag 145.

In another embodiment, the RFID tag 145 can be a passive device that canbe interrogated by an RF field emitted by the RFID reader 160. Wheninterrogated, the RFID tag 145 can become active. The RFID tag 145 candetect the presence of the field of the RFID reader 160 and subsequentlyactivate to send data. Like its active RFID tag counterpart, a passiveRFID tag can communicate with the RFID reader 160 via wireless RFcommunication links that are not limited to line of sight operation.

The central controller 105 further can include information specifyingthe position or location of the various communication devices shown. Inone embodiment, stationary devices such as the computer system 155 andthe printer 170 can be assigned fixed locations that can be programmedinto the central controller 105, i.e., stored with the data storagedevice 115 and/or preconfigured within the controller application 110.In another embodiment, stationary devices can be attached to, andlogically associated with, RFID tags (not shown) such that the locationof devices such as computer system 155 and printer 170 can be determineddynamically as discussed herein.

The mobile devices such as the personal digital assistant 175, themobile phone 180, and the portable computer 185, also can be equippedwith RFID tags so that the central controller 105 can dynamicallydetermine the location of such devices, at least when within range ofthe antennae 140. In another embodiment, such devices can include GlobalPositioning System (GPS) systems and be configured to provide locationinformation back to the central controller 105. In any case, theposition, or location, of such mobile devices also can be determined.

In operation, the central controller 105 can track the location of theuser 150 via detection of the RFID tag 145. The central controller 105can determine proximity of the RFID tag 145 to different communicationdevices as the user moves about, i.e., within an office building, aroom, a dwelling, etc. In one embodiment, the user 150 can beconsidered, by the central controller 105, to be proximate to a devicewhen within a predetermined distance of that device. For example, withregard to the computer system 155, the user can be said to be proximateto the computer system 155 when located within 5 feet of the device, 3feet of the device, or 10 feet of the device. In another embodiment, auser can be said to be proximate to a device when the RFID tagassociated with that user is detected by an RFID reader associated withthe device. Thus, for example, the user 150 can be said to be proximateto the computer system 155 when RFID tag 145 is detected by RFID reader160.

As user 150 motion is tracked, the controller application 110, workingin cooperation with different client applications, can initiate variousactions within the different devices shown. For example, when thecontroller application 110 determines that the user 150 is no longerproximate to computer system 155, the controller application 110 caninstruct a client application executing within the computer system 155to automatically log the user 150 off of the computer system 155.Similarly, the controller application 110 can instruct the clientapplication within the computer system 155 to automatically log the user150 back onto the system when the controller application 110 determinesthat the user 150 is once again proximate to the computer system 155. Inanother example, such actions can be initiated by the computer system155. That is, the computer system 155, having detected the RFID 145 viathe RFID reader 160, can perform or initiate one or more programmaticactions. The computer system 155 then can notify the central controller105 that the user 150 is near or proximate thereto.

In another embodiment, programmatic actions involving multiple devicescan be initiated, which incorporate user proximity and/or locationinformation in a dynamic fashion. For example, the user 150 can initiatea print job from computer system 155. The print job can be directed toprinter 170 and stored, temporarily, in print queue 165. When the userleaves computer system 155 to retrieve the printed document, the usercan be logged off of the computer system 155 as described. The print jobcan be maintained within the print queue 165 until such time that theuser 150 is determined to be proximate to the printer 170. At that time,the print job can be released from the print queue 165 and printed onprinter 170.

If the user 150 is not determined to be proximate to the printer 170within a predetermined amount of time, i.e., several hours or within afull 24 hour period, for example, the print job can be purged from theprint queue 165. It should be appreciated that in one embodiment, theprinter 170 can include an RFID reader to detect the presence orproximity of the user such that the determination as to when to releaseor purge the print job is completely performed within the printer 170.In another embodiment, the printer 170 can be notified that the user isproximate by the central controller 105.

In yet another aspect of the present invention, various communicationscan be routed between different devices based, at least in part, uponthe location of the user 150 and/or his or her proximity to variouscommunication devices. In one embodiment, when a communication isreceived by a communication system, i.e., communication system 120, thecommunication system 120 can send a notifying event to the centralprocessor 105. The notifying event can indicate an address to which thecommunication was directed. Since communication system 120 is atelephony system, the address can be a telephone number. If thecommunication system used in the example discussed herein were theelectronic mail system, the address would be an electronic mail address,or a username, etc., in the case of an instant message type ofcommunication.

The central processor 105 can identify a user associated according tothe communication address to which the communication is directed. Thecentral processor 105 further can determine a location for that user,i.e., by looking up the particular RFID tag associated with the user anddetecting the location of the RFID tag 145 or its proximity to anycommunication devices. The incoming communication can then be routed, orre-routed, to the communication device which is proximate to the user.The central processor 105 can instruct the communication system 120 toroute the incoming communication to a different communication address,i.e., a different telephone number or the like.

In another example, the incoming message can be redirected to anothercommunication system which may utilize a different communication channelthan the original communication system. That is, an incoming call can besent to voice mail, converted to text via a speech recognition engine,and then sent as a text message or electronic mail to an alternatecommunication device and corresponding communication address.

FIGS. 2 and 3 are tables illustrating various states which can bespecified within a user profile in accordance with another aspect of thepresent invention. As shown, the tables of FIGS. 2 and 3 depict variousprocessing strategies or decisions for routing communications accordingto different states. The states correspond to the location of a user asdetermined by the central controller.

FIG. 2 is a table illustrating telephone call handling in accordancewith another aspect of the present invention. The table depicted in FIG.2 can be incorporated into a user profile to indicate how incomingtelephone calls are to be directed in accordance with user-specifiedpreferences. User profile information can be stored with the datastorage device of the central controller, for example. The data can bespecified as a 3-dimensional decision matrix.

The left column of the table in FIG. 2 indicates various states that canbe determined for a given user by the central controller. Each state cancorrespond to a location of a user or the proximity of the user withrespect to various communication devices. “At Desk” is a state which canindicate that the central controller has determined that the user islocated at, or near, his or her own desk. As such, access to the user'sworkstation (computer system) is available and access to communicationsystems such as electronic mail, instant messaging, and a landline canbe assumed by the central controller. Accordingly, when the centralcontroller determines that the user is located “At Desk”, the centralcontroller can instruct the instant messaging system to change theuser's status to “Ready”. Further, the central controller can instructthe telephony system to route incoming calls directed to the user, or atelephone number associated with the user, to the user's landline. Asshown, calls can be directed to the user's landline first andalternatively to the user's mobile phone. Thus, for example, if the useris determined to be “At Desk”, the user can be automatically logged intothe workstation and the status and routing rules noted above can beinvoked.

When the user is determined to be “Roaming the Office”, i.e., the useris in the office but is not at his or her own desk, the centralcontroller can instruct the instant messaging system to change theuser's status to “Away”. The central controller can instruct thetelephony system to route telephone calls originally directed to theuser's landline to the user's mobile phone. If the user is determined tobe “At Another Location”, meaning that the user has been located at theworkstation, for example, of a co-worker, the instant messaging statusof the user can be set to “Ready”. Incoming telephone calls intended forthe user first can be directed to the landline that is associated withthe workstation at which the user is located, despite that landlinebelonging to the co-worker. If that is not successful, the incomingtelephone call can be directed to the user's mobile phone. If the useris determined to be “Out of Office”, the user can be logged off of theinstant messaging system. Further, calls can be automatically sent tothe user's voice mail.

FIG. 3 is a table illustrating text message handling in accordance withanother aspect of the present invention. As shown, when the centralcontroller determines that the user is located “At Desk”, the centralcontroller instructs the instant messaging system to give the user astatus of “Ready” so that messages can be sent to the user's instantmessaging account or communication address. When the user is determinedto be “Roaming the Office”, the central controller can notify theinstant messaging system to set the status of the user to “Away”.Further, instant messages can be routed to the user's mobile phone usingShort Message Service (SMS).

When the user is determined to be “At Another Location” by the centralcontroller, the central controller can instruct one or more systems,i.e., the instant messaging system, a telephony system, etc., to convertincoming text messages to audio using text-to-speech technology androute such communications to the user's landline or mobile phone in theorder specified. The user can listen to the messages as delivered orretrieve messages from voice mail. If the user is determined to be outof the office, text messages can be delivered to the user's mobile phoneusing SMS or to the user's landline using text-to-speech technology,i.e., as a voice mail.

As noted above, the processing rules can indicate that a particularcommunication is to be format converted and sent, via a differentcommunication channel to an alternate communication address andcorresponding communication device. If, for example, a communication wasintended to be sent to an instant messaging client, where thecommunication channel is effectively a text message, and the userprofile indicates that the text message is to be format converted anddelivered via a telephony communication channel, i.e., usingtext-to-speech technology, the central controller can coordinate suchaction between the involved communication systems. That is, the centralcontroller can cause the instant messaging system to send the textmessage to a message translation service or system, instruct thetranslation system to translate the text message into an audio message,cause the audio message to be delivered to the telephony system, andinstruct the telephony system to deliver the resulting audio message toa particular telephone number.

FIG. 4 is an example of a 3-dimensional decision matrix configured inaccordance with one embodiment of the present invention. As shown, thetables from both FIGS. 2 and 3 are arranged in 3-dimensions with axescorresponding to message type, location, and device. The decision matrixof FIG. 4 can be expanded along any of the three different axes asfurther locations (or location states), devices, and/or message typesare incorporated or added to a given system.

FIG. 5 is a flow chart illustrating a method 500 of routing messages inaccordance with another embodiment of the present invention. The methodcan begin in step 505, where the central controller can begin trackingthe location of one or more users. The position of one or more RFID tagscan be tracked. As noted, the RFID tags can be attached to one or moreusers and/or devices. Each of the RFID tags, when read, can provide aunique identifier that can be logically associated with a particularuser and/or device as the case may be.

In step 510, the central controller can receive a notification from acommunication system, i.e., a telephony system, that an incomingcommunication is being, or has been, received. The notification to thecentral controller can specify a communication address, which in thecase of a telephone call can be a telephone number. In step 515, thecentral controller can determine the communication address to which theincoming communication is to be directed from the notification.

In step 520, a user identity associated with the communication addresscan be identified. An RFID tag associated with the user identity alsocan be identified. In step 525, a user profile, including userpreferences, as may be stored within the data store of the centralcontroller, can be consulted to determine if any special handling of theincoming communication to the user is to be implemented. As noted, thecentral controller can include user profiles specifying how message areto be handled or routed per rules that can be predetermined andestablished by system administrators or users. If special handling isrequired, the method can proceed to step 535. If not, the method cancontinue to step 530. In step 530, the central controller can instructthe communication system to continue processing the incoming message,for example, by sending or routing the incoming communication to theoriginal communication address and corresponding communication devicespecified in the notification of step 510. Alternatively, the centralcontroller can take no action and allow the communication system toprocess the incoming communication uninterrupted.

Continuing with step 535, in the case where the user preferencesindicate that special handling is applicable, the central controller candetermine the distance between the RFID tag and the communication deviceassociated with the determined communication address (target endpoint).In step 540, a determination can be made by the central controller as towhether the distance between the RFID tag and the communication deviceexceeds a predetermined threshold. If so, the method can proceed to step545. If not, the method can continue to step 530 to continue processingas described.

In step 545, an alternate communication device can be selected to whichthe incoming communication will be delivered. The alternatecommunication device can be selected according to the user profile. Itshould be appreciated that user preferences can account for the locationof the user as discussed with reference to FIGS. 2 and 3 in terms ofassigning the user a particular location (state) according to whetherthe user is detected on premises, at his or her desk, is at anotheruser's desk, etc. In another example, the user preferences can specifythat the central controller should locate a communication device that isproximate to the user and select that communication device as thealternate communication device. In yet another example, the preferencescan specify that the communication should be directed to a firstalternate communication device, if unsuccessful, to a second alternatecommunication device, etc. Once an alternate communication device isselected, a communication address for the user for the selectedalternate communication device can be determined.

In step 550, the central processor can instruct the communication systemto route the incoming communication to the communication addresscorresponding to the selected, alternate communication device. It shouldbe appreciated that if the original communication needs reformatting,the central controller can initiate such a process so that thecommunication is formatted according to the communication channelassociated with the alternate communication device.

The steps described with reference to FIG. 5 present one possibleembodiment of the present invention. Other embodiments can includeautomatically logging a user onto a particular communication device whenthe user is proximate to that communication device. For example, thecentral controller can track the location of a user and make adetermination as to whether the user is proximate to a communicationdevice. If so, the central controller can instruct the communicationdevice to which the user is proximate to perform a predeterminedfunction. That function can include automatically logging the user intothe communication device. Further, the status of the user, i.e., interms of presence, can be altered when the user is logged in. Thus, forexample, the user status in an instant messaging system can beautomatically updated to “Ready”. The status of the user with respect toone or more other communication systems also can be updated.

In another embodiment, when a user is already logged into a particularcommunication device, the central controller may detect that the user isno longer proximate to that device. In that case, the central controllercan log the user out of that communication device and update the user'sstatus, i.e., presence, on any of a variety of different communicationsystems to indicate that the user is “Away” or otherwise not available.As the user moves throughout an office environment, the user can beautomatically logged into other devices as the user becomes proximate tosuch devices.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof code, which comprises one or more executable instructions forimplementing the specified logical function(s). It should also be notedthat, in some alternative implementations, the functions noted in theblock may occur out of the order noted in the figures. For example, twoblocks shown in succession may, in fact, be executed substantiallyconcurrently, or the blocks may sometimes be executed in the reverseorder, depending upon the functionality involved. It will also be notedthat each block of the block diagrams and/or flowchart illustration, andcombinations of blocks in the block diagrams and/or flowchartillustration, can be implemented by special purpose hardware-basedsystems that perform the specified functions or acts, or combinations ofspecial purpose hardware and computer instructions.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the invention. Asused herein, the singular forms “a”, “an”, and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprises”and/or “comprising”, when used in this specification, specify thepresence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof.

The corresponding structures, materials, acts, and equivalents of allmeans or step plus function elements in the claims below are intended toinclude any structure, material, or act for performing the function incombination with other claimed elements as specifically claimed. Thedescription of the present invention has been presented for purposes ofillustration and description, but is not intended to be exhaustive orlimited to the invention in the form disclosed. Many modifications andvariations will be apparent to those of ordinary skill in the artwithout departing from the scope and spirit of the invention. Theembodiment was chosen and described in order to best explain theprinciples of the invention and the practical application, and to enableothers of ordinary skill in the art to understand the invention forvarious embodiments with various modifications as are suited to theparticular use contemplated.

Having thus described the invention of the present application in detailand by reference to the embodiments thereof, it will be apparent thatmodifications and variations are possible without departing from thescope of the invention defined in the appended claims.

1. A method of integrating devices using radio frequency identification(RFID) technology, the method comprising: tracking movement of an RFIDtag, wherein the RFID tag is associated with a user; determiningproximity of the RFID tag to a printer; queuing a print job originatedby the user while the RFID tag is not proximate to the printer; andreleasing the print job when the RFID tag is proximate to the printer.2. (canceled)
 3. The method of claim 1, further comprising deleting theprint job from a print queue if the RFID tag is not proximate to theprinter within a predetermined amount of time from when the print joboriginated.
 4. The method of claim 1, further comprising logging theuser into the printer.
 5. The method of claim 1, further comprisingfirst determining that the RFID tag is no longer proximate to a firstcommunication device.
 6. The method of claim 5, further comprisingcausing the user to be logged off of the first communication device. 7.The method of claim 5, further comprising: receiving, from acommunication system, a notification of an incoming communicationdirected to a first communication address associated with the firstcommunication device; identifying an intended recipient of thecommunication according to the first communication address, wherein theintended recipient is associated with an RFID tag; determining acommunication address for the printer; and instructing the communicationsystem to route the communication to the communication address for theprinter.
 8. A computer program product for integrating devices usingradio frequency identification (RFID) technology comprising: a computerreadable storage having computer usable program code embodied therewith,the computer usable program code comprising: computer usable programcode configured to track movement of an RFID tag, wherein the RFID tagis associated with a user; computer usable program code configured todetermine proximity of the RFID tag to a printer; computer usableprogram code configured to queue a print job originated by the userwhile the RFID tag is not proximate to the printer; and computer usableprogram code configured to release the print job when the RFID tag isproximate to the printer.
 9. (canceled)
 10. The computer program productof claim 8, further comprising computer usable program code configuredto delete the print job from a print queue if the RFID tag is notproximate to the printer within a predetermined amount of time from whenthe print job originated.
 11. The computer program product of claim 8,further comprising computer usable program code configured to log theuser into the printer.
 12. The computer program product of claim 8,further comprising computer usable program code configured to firstdetermine that the RFID tag is not proximate to a first communicationdevice.
 13. The computer program product of claim 12, further comprisingcomputer usable program code configured to cause the user to be loggedoff of the first communication device.
 14. The computer program productof claim 12, further comprising: computer usable program code configuredto receive, from a communication system, a notification of an incomingcommunication directed to a first communication address associated withthe first communication device; computer usable program code configuredto identify an intended recipient of the communication according to thefirst communication address, wherein the intended recipient isassociated with an RFID tag; computer usable program code configured todetermine a communication address for the printer; and computer usableprogram code configured to instruct the communication system to routethe communication to the communication address for the printer.